package org.streamerstudio.ui;

import org.eclipse.core.databinding.DataBindingContext;
import org.eclipse.emf.ecore.EObject;
import org.eclipse.swt.widgets.Composite;
import org.streamerstudio.model.gstreamer.registry.GstObject;

public abstract class ModelComposite extends Composite {

	private GstObject model;
	private DataBindingContext bindingContext;
	private boolean editable;
	
	public ModelComposite(Composite parent, int style) {
		this(parent, style, true);
	}
	
	public ModelComposite(Composite parent, int style, boolean editable) {
		super(parent, style);
		this.editable = editable;
		
		createContents();
	}


	


	public GstObject getModel() {
		return model;
	}
	
	protected abstract void createContents();
	
	protected abstract DataBindingContext initDataBindings();
}
